package route

import (
	"gin/chibuda/app/admin/adminController"
	"gin/chibuda/route/middleware"
	"github.com/gin-gonic/gin"
)

func Admin(r *gin.Engine)  {
	adminGroup := r.Group("/admin")
	//adminGroup.Use(middleware.CheckSign())
	{
		//系统工具
		adminGroup.GET("/SystemInit", adminController.SystemInit) //服务监控
		adminGroup.GET("/Test", adminController.Test) //服务监控


		adminGroup.POST("/login", adminController.Login)
		adminGroup.Use(middleware.JWTAuth()).Use(middleware.AdminAuth())
		{
			adminGroup.POST("/Upload", adminController.UploadFile) //文件上传

			adminGroup.GET("/GetRouter", adminController.GetRouter)  //初始化路由
			adminGroup.PUT("/ChangePsd", adminController.ChangePsd)  //修改密码
			adminGroup.GET("/userInfo", adminController.UserInfo) //获取后台管理员列表

			//后台管理 - 菜单节点
			adminGroup.GET("/GetIcon", adminController.GetIcon) //获取后台管理员列表
			adminGroup.GET("/MenuGet", adminController.GetMenu) //获取菜单
			adminGroup.PUT("/MenuAddOrEdit", adminController.MenuEdit) //编辑菜单
			adminGroup.DELETE("/MenuDel", adminController.MenuDel) //编辑菜单

			//后台管理 - 后台用户
			adminGroup.GET("/AdminUserList", adminController.AdminUserList) // 获取管理员列表
			adminGroup.PUT("/AdminUserEdit", adminController.AdminUserEdit) // 更新管理员
			adminGroup.GET("/AdminUserGetRole", adminController.AdminUserGetRole) // 获取所有角色
			adminGroup.DELETE("/AdminUserDel", adminController.AdminUserDel) // 删除管理员

			//后台管理 - 角色管理
			adminGroup.GET("/RoleList", adminController.RoleList) // 获取角色列表
			adminGroup.PUT("/RoleEdit", adminController.RoleEdit) // 角色操作
			adminGroup.DELETE("/RoleDel", adminController.RoleDel) // 删除角色
			adminGroup.GET("/RoleMenu", adminController.RoleMenu) // 获取角色权限
			adminGroup.POST("/RoleMenuAuth", adminController.RoleMenuAuth) // 获取角色权限

			//系统工具 -- 字典
			adminGroup.GET("/DictGet", adminController.DictGet) // 获取字典列表
			adminGroup.PUT("/DictuEdit", adminController.DictuEdit) // 角色操作
			adminGroup.DELETE("/DictDel", adminController.DictDel) // 删除角色


			//文章
			adminGroup.GET("/ArticleList", adminController.ArticleList) // 获取字典列表
			adminGroup.PUT("/ArticleEdit", adminController.ArticleEdit) // 角色操作
			adminGroup.DELETE("/ArticleDel", adminController.ArticleDel) // 删除角色

		}
	}
}